<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>GSSAPI</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/GSSAPI"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-GSSAPI rootpage-GSSAPI skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">GSSAPI</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><p>Das <b>Generic Security Service Application Program Interface</b> (<b>GSSAPI</b>, auch <b>GSS-API</b>) ist eine <a href="Programmierschnittstelle" title="Programmierschnittstelle">Programmierschnittstelle</a> für Anwendungen, die auf Security Devices zugreifen.
</p><p>Die GSSAPI ist ein <a href="Internetstandard" title="Internetstandard">Internetstandard</a> der <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">IETF</a>, der das Problem vieler verschiedener, teilweise inkompatibler Security Devices adressiert.
</p>
<div class="mw-heading mw-heading2"><h2 id="Funktionsweise">Funktionsweise</h2></div>
<p>Die GSSAPI selbst bietet keinerlei Sicherheit.
Stattdessen bieten verschiedene Hersteller ihre <a href="Sicherheitssoftware" title="Sicherheitssoftware">Sicherheitssoftware</a> an, oft in Form von <a href="Programmbibliothek" title="Programmbibliothek">Bibliotheken</a>. Diese Bibliotheken präsentieren ein GSS-kompatibles Interface für Anwendungsprogrammierer, welche wiederum nur die herstellerunabhängige und standardisierte GSSAPI nutzen müssen. Wenn die Implementationen der Sicherheitsfunktionen irgendwann ausgetauscht werden müssen, bedarf es keiner Änderung an der Applikation.
</p><p>Das wichtigste Feature der GSSAPI-Anwendungen ist der Austausch von undurchsichtigen Nachrichten (sogenannten <a href="Tokenisierung" title="Tokenisierung">Tokens</a>), die die Implementierungsdetails vor den höheren Schichten der Anwendung verstecken. Die <a href="Client" title="Client">Client</a>- und <a href="Server" title="Server">Serverseite</a> der Implementation sind so gestaltet, dass sie die Tokens, die die jeweilige GSSAPI-Implementation liefert, übertragen.
GSSAPI-Tokens können über unsichere Netzwerke (wie das <a href="Internet" title="Internet">Internet</a>) ausgetauscht werden, denn ihr Mechanismus garantiert Nachrichtensicherheit. Nachdem eine gewisse Anzahl von Token ausgetauscht wurde, informiert die GSSAPI auf beiden Seiten die jeweilige Anwendung, dass eine <i>sichere Verbindung</i> installiert wurde.
</p><p>Sobald diese sichere Verbindung aufgebaut wurde, können sensible Nachrichten der jeweiligen Anwendung in Tokens der GSSAPI verschlüsselt verpackt und sicher zwischen Client und Server übermittelt werden.
Der typische Schutz, der durch die GSSAPI bereitgestellt wird, beinhaltet Vertraulichkeit (Geheimhaltung) und Integrität (Echtheit). Die GSSAPI kann ebenfalls lokale Garantien über die Identität des entfernten Benutzers oder Rechners bereitstellen.
</p><p>Die GSSAPI beschreibt etwa 45 Funktionsaufrufe. Besonders bedeutsam sind:
</p>
<ul><li><i>GSS_Acquire_cred</i> – erhält den Beweis für den User, oftmals ein kryptografischer Schlüssel</li>
<li><i>GSS_Import_name</i> – konvertiert einen eingegebenen Benutzer- oder Hostnamen in eine identifizierbare Form</li>
<li><i>GSS_Init_sec_context</i> – generiert ein neues Token, das zum Server geschickt wird</li>
<li><i>GSS_Accept_sec_context</i> – bearbeitet ein Token von <i>GSS_Init_sec_context</i> und generiert ein neues Token, das zurückgeschickt werden kann</li>
<li><i>GSS_Wrap</i> – konvertiert Anwendungsdaten in eine sichere Nachricht (typischerweise verschlüsselt)</li>
<li><i>GSS_Unwrap</i> – konvertiert eine sichere Nachricht zurück in Anwendungsdaten</li></ul>
<p>Die GSSAPI ist für <a href="C_(Programmiersprache)" title="C (Programmiersprache)">C</a> und <a href="Java_(Programmiersprache)" title="Java (Programmiersprache)">Java</a> standardisiert. Ein Standard für <a href="C-Sharp" title="C-Sharp">C#</a> befindet sich in der Entwicklung.
</p><p>Eine Beschränkung der GSSAPI ist, dass nur die Authentifizierung (Beglaubigung), nicht jedoch die <a href="Autorisierung" title="Autorisierung">Autorisierung</a> (Berechtigung) standardisiert wird, weiterhin wird eine Client-Server Architektur angenommen.
</p><p>Verschiedene GSSAPI-Mechanismen arbeiten normalerweise nicht zusammen. Wenn für die Zukunft verschiedene andere GSSAPI-Mechanismen in großen, heterogenen Netzwerken erwartet werden, dürfte eine <a href="Implementierung" title="Implementierung">Implementierung</a> von SPNEGO auf jeder Seite der Kommunikation sinnvoll sein. Dadurch können gängige GSSAPI-Mechanismen sicher zwischen zwei Partnern (Initiator und Empfänger) ausgehandelt werden. Microsoft hat SPNEGO in <a href="Microsoft_Windows_2000" title="Microsoft Windows 2000">Windows 2000</a> eingebaut, als <a href="Kerberos_(Protokoll)" title="Kerberos (Protokoll)">Kerberos 5</a> zum existierenden <a href="NTLM" title="NTLM">NTLM</a>-SSP-Mechanismus hinzugefügt wurde.
</p>
<div class="mw-heading mw-heading2"><h2 id="Verbindung_zu_Kerberos">Verbindung zu Kerberos</h2></div>
<p>Die dominierende Implementierung der GSSAPI-Mechanismen, die derzeit genutzt wird, ist <a href="Kerberos_(Protokoll)" title="Kerberos (Protokoll)">Kerberos</a>.
Die Kerberos-API ist jedoch nicht standardisiert, es existieren verschiedene Implementationen, die zueinander inkompatible APIs verwenden.
</p>
<div class="mw-heading mw-heading2"><h2 id="Konkurrierende_Technologien">Konkurrierende Technologien</h2></div>
<ul><li><a href="Remote_Authentication_Dial-In_User_Service" title="Remote Authentication Dial-In User Service">Remote Authentication Dial-In User Service</a> (RADIUS)</li>
<li><a href="Simple_Authentication_and_Security_Layer" title="Simple Authentication and Security Layer">Simple Authentication and Security Layer</a> (SASL)</li>
<li>Security Support Provider Interface (SSPI) ist eine von Microsoft veröffentlichte, proprietäre Abart der GSSAPI</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Schlüsselkonzepte_der_GSSAPI"><span id="Schl.C3.BCsselkonzepte_der_GSSAPI"></span>Schlüsselkonzepte der GSSAPI</h2></div>
<dl><dt>Name</dt>
<dd>ein binärer String, der den Prinzipal (den Benutzer oder das Programm) angibt – siehe <a href="Zugriffskontrolle" title="Zugriffskontrolle">Zugriffskontrolle</a> und <a href="Identit%C3%A4t" title="Identität">Identität</a>. Als Beispiel nutzt Kerberos Namen wie <i>user@REALM</i> für Benutzer und <i>service/hostname@REALM</i> für Programme.</dd>
<dt><a href="Berechtigungsnachweis_(Identifikationstechnik)" title="Berechtigungsnachweis (Identifikationstechnik)">Credentials</a> (Legitimation)</dt>
<dd>Informationen über die Identität; werden von einer Entität als benannter Principal genutzt. Credentials enthalten üblicherweise einen kryptografischen Schlüssel.</dd>
<dt>Kontext</dt>
<dd>Der Status einer Seite der beglaubigten/bestätigten Verbindung. Kann Dienste zum Schutz von Nachrichten enthalten, die zum Aufbau einer sicheren Verbindung genutzt werden.</dd>
<dt>Token</dt>
<dd>undurchsichtige Nachrichten, die entweder als Teil der initialen Authentifizierung (Kontext-Level-Token) oder als Teil der geschützten Kommunikation (Per-Nachricht-Token) ausgetauscht werden.</dd>
<dt>Mechanismus</dt>
<dd>Eine zugrundeliegende GSSAPI-Implementierung, die Namen, Token und Credentials bereitstellt. Bekannte Mechanismen beinhalten Kerberos, NTLM, <a href="Distributed_Computing_Environment" title="Distributed Computing Environment">DCE</a>, SESAME, SPKM, LIPKEY.</dd>
<dt>Initiator/Empfänger</dt>
<dd>Das Ende, das das erste Token sendet, ist der Initiator, das andere Ende der Empfänger. Im Allgemeinen ist der Client der Initiator, während der Server der Empfänger ist.</dd></dl>
<div class="mw-heading mw-heading2"><h2 id="Geschichte_der_GSSAPI">Geschichte der GSSAPI</h2></div>
<ul><li>Juli 1991: Die IETF Common Authentication Technology (CAT) Working Group trifft sich in Atlanta, geleitet von John Linn</li>
<li>September 1993: GSSAPI Version 1 (RFC 1508,<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> RFC 1509<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>)</li>
<li>Mai 1995: <a href="Microsoft_Windows_NT_3.51" title="Microsoft Windows NT 3.51">Windows NT 3.51</a> erscheint, enthält SSPI</li>
<li>Juni 1996: Kerberos-Mechanismus für GSSAPI (RFC 1964<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>)</li>
<li>Januar 1997: GSSAPI Version 2 (RFC 2078<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>)</li>
<li>Oktober 1997: SASL veröffentlicht, enthält GSSAPI-Mechanismen (RFC 2222<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>)</li>
<li>Januar 2000: GSSAPI Version 2 Update 1 (RFC 2743,<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> RFC 2744<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>)</li>
<li>August 2004: KITTEN-Arbeitsgruppe trifft sich, um CAT-Aktivitäten fortzusetzen</li>
<li>Mai 2006: <a href="Secure_Shell" title="Secure Shell">Secure-Shell</a>-Nutzung der GSSAPI standardisiert (RFC 4462<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <style data-mw-deduplicate="TemplateStyles:r250917974">
/* start https://de.wikipedia.org/ */
.mw-parser-output .dewiki-iconexternal>a{background-position:center right!important;background-repeat:no-repeat!important}body.skin-minerva .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/OOjs_UI_icon_external-link-ltr-progressive.svg")!important;background-size:10px!important;padding-right:13px!important}body.skin-timeless .mw-parser-output .dewiki-iconexternal>a,body.skin-monobook .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/MediaWiki_external_link_icon.svg")!important;padding-right:13px!important}body.skin-vector .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/Link.ernal-small-ltr-progressive.svg")!important;background-size:0.857em!important;padding-right:1em!important}
/* end https://de.wikipedia.org/ */
</style><span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc4121" class="extiw external" title="rfc:4121">4121</a></span></i> – <i><span lang="en">The Kerberos 5 GSS-API mechanism: Version 2 (englisch)</span></i>. (englisch).</li>
<li><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc4178" class="extiw external" title="rfc:4178">4178</a></span></i> – <i><span lang="en">The Simple and Protected GSS-API Negotiation Mechanism (SPNEGO) (englisch)</span></i>. (englisch).</li>
<li><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2025" class="extiw external" title="rfc:2025">2025</a></span></i> – <i><span lang="en">The Simple Public-Key GSS-API Mechanism (SPKM) (englisch)</span></i>. (englisch).</li>
<li><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2847" class="extiw external" title="rfc:2847">2847</a></span></i> – <i><span lang="en">LIPKEY – A Low Infrastructure Public Key Mechanism Using SPKM (englisch)</span></i>. (englisch).</li>
<li><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc6616" class="extiw external" title="rfc:6616">6616</a></span></i> – <i><span lang="en">A Simple Authentication and Security Layer (SASL) and Generic Security Service Application Program Interface (GSS-API) Mechanism for OpenID</span></i>. (englisch).</li>
<li><a rel="nofollow" class="external text" href="http://www.ietf.org/html.charters/kitten-charter.html">Kitten working group – next generation GSS-API.</a> ietf.org (englisch).</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc1508" class="extiw external" title="rfc:1508">1508</a></span></i> – <i><span lang="en">Generic Security Service Application Program Interface</span></i>. September 1993 (englisch).</span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc1509" class="extiw external" title="rfc:1509">1509</a></span></i> – <i><span lang="en">Generic Security Service API: C-bindings</span></i>. September 1993 (englisch).</span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc1964" class="extiw external" title="rfc:1964">1964</a></span></i> – <i><span lang="en">The Kerberos Version 5 GSS-API Mechanism</span></i>. Juni 1996 (englisch).</span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2078" class="extiw external" title="rfc:2078">2078</a></span></i> – <i><span lang="en">Generic Security Service Application Program Interface, Version 2</span></i>. Januar 1997 (englisch).</span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2222" class="extiw external" title="rfc:2222">2222</a></span></i> – <i><span lang="en">Simple Authentication and Security Layer (SASL)</span></i>. (englisch).</span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><a href="#cite_ref-6">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2743" class="extiw external" title="rfc:2743">2743</a></span></i> – <i><span lang="en">Generic Security Service Application Program Interface Version 2, Update 1</span></i>. Januar 2000 (englisch).</span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2744" class="extiw external" title="rfc:2744">2744</a></span></i> – <i><span lang="en">Generic Security Service API Version 2: C-bindings</span></i>. Januar 2000 (englisch).</span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc4462" class="extiw external" title="rfc:4462">4462</a></span></i> – <i><span lang="en">Generic Security Service Application Program Interface (GSS-API) Authentication and Key Exchange for the Secure Shell (SSH) Protocol</span></i>. Mai 2006 (englisch).</span>
</li>
</ol></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2024-12-28" href="https://de.wikipedia.org/wiki/?title=GSSAPI&oldid=251669567">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>